package com.shujia.wyh.day04;

/*
    选择结构第二种：switch
        语句定义格式：
            switch(表达式){
                case 常量值1:
                    语句体1;
                    break;
                case 常量值2:
                    语句体2;
                    break;
                case 常量值3:
                    语句体3;
                    break;
                ...
                default:
                    语句体n+1;
                    break;
            }

        名词解释：
            1、switch:表示它是java中的一个选择结构语句
            2、表达式:是进行选择匹配的内容，表达式具有一个结果值，而java中switch的表达式的值可以是byte,short,int,char
                JDK1.5之后可以是枚举
                JDK1.7之后可以是String
            3、case:匹配的内容，后面跟上与表达式结果做比较的值，如果匹配到，就执行对应的case中的语句体。
            4、常量值:这里只能是一个常量值，不可以是变量！！！！！！！
            5、语句体:当有匹配的case的时候，执行对应的语句体。
                （思考一个问题，switch语句和if语句一样吗？只能执行一个case中的语句体吗？如果不是，是由什么来控制的？）
            6、break:
                一般情况下，每一个语句体执行完后，都会跟上一个break,表示跳出整个switch选择
                (思考：break能不能不写，不写会发生什么情况？)
            7、default:
                如果所有的case都没有被匹配到的话，最终会执行default中的语句体内容。
                (思考：default能不能不写？如果写上，一定要放在某尾吗？)

        执行流程：*****
            1、首先会计算表达式中的结果值
            2、拿着这个结果值，与case后面的常量值自上而下的做匹配，如果匹配到一样的值，就会执行对应case中的语句体内容
            3、执行完语句体后，会紧接着执行后面的break语句，执行完break语句后，会结束整个switch选择
            4、如果所有的case都没有匹配到对应的值后，会执行default中的语句体内容，执行完后执行break，跳出整个switch选择

       注意事项：
            1、case后面匹配的常量值不能重复

 */
import java.util.Scanner;
public class SwitchDemo1 {
    public static void main(String[] args) {
        //创建键盘录入对象
        Scanner sc = new Scanner(System.in);

        //可乐 3，农夫山泉 2，元气森林 5，阿萨姆奶茶 4，红牛 6
        //键盘录入字符串，表示你想要买的饮料
        System.out.println("请输入你想要购买的饮料：");
        String drink = sc.next();

        switch (drink){
            case "可乐":
                System.out.println("欢迎您购买可乐，共消费3元，欢迎下次光临！");
                break;
            case "农夫山泉":
                System.out.println("欢迎您购买农夫山泉，共消费2元，欢迎下次光临！");
                break;
            case "元气森林":
                System.out.println("欢迎您购买元气森林，共消费5元，欢迎下次光临！");
                break;
            case "阿萨姆奶茶":
                System.out.println("欢迎您购买阿萨姆奶茶，共消费4元，欢迎下次光临！");
                break;
            case "红牛":
                System.out.println("欢迎您购买红牛，共消费6元，欢迎下次光临！");
                break;
            default:
                System.out.println("您想要的"+drink+"饮料暂时缺货，明天再来看看");
                break;
        }



    }
}
